export type RouteType = {
    path?: string,
    children?: any[],
    type: string
    location?: string,
}
/**
 * 解析路由
 * @param path 路由路径
 * @param handler 路由处理器 - 路由处理器可以是一个函数，也可以是一个对象，对象必须包含handle方法，还可以是函数数组
 * @returns
 */
export default (path: string, handler: any) : RouteType => {
    if(Array.isArray(handler) && handler.length>0) {
         return {
             path,
             children: handler,
             type: 'route'
         }
    }
    if(typeof handler === 'function') {
        return {
            path,
            children: [handler],
            type: 'route'
        }
    }
    if(typeof handler === 'object' && handler.handle) {
        return {
            path,
            children: [handler],
            type: 'route'
        }
    }
    return {
        type: 'none'
    };
}